#include <stdio.h>  
long long int memo[1000];  
long long int ff(int n) {  
    if (n <= 1) {  
        return n;  
    }  
    // 如果已经计算过，则直接返回结果  
    if (memo[n] != -1) {  
        return memo[n];  
    }  
    // 否则，计算并存储结果  
    memo[n] = ff(n-1) + ff(n-2);  
    return memo[n];  
}   
int main() {  
    int n;  
    for (int i = 0; i < 100; i++) {  
        memo[i] = -1;  
    }      
    printf("你想前第几个？？？: ");  
    scanf("%d", &n);  
    for(int i = 1; i <= n; i++) 
    printf("第 %d 个是 %lld\n", i, ff(i)); 
    return 0;  
}